Page({
  data: {
    // ... 原有数据
    dictType: 'course', // 当前选中的词库类型：'course' 或 'cambridge'
    grade3Expanded: false,
    grade4Expanded: false,
    starterExpanded: false,
    courseDict: {
      grade3: {
        name: '三年级',
        progress: 0,
        lessons: Array(8).fill().map((_, i) => ({
          id: i + 1,
          name: `第${i + 1}课`,
          completed: false
        }))
      },
      grade4: {
        name: '四年级',
        progress: 0,
        lessons: Array(8).fill().map((_, i) => ({
          id: i + 1,
          name: `第${i + 1}课`,
          completed: false
        }))
      }
    },
    cambridgeDict: {
      starter: {
        name: '预备级',
        progress: 0,
        semesters: {
          1: Array(16).fill().map((_, i) => ({
            id: i + 1,
            name: `第${i + 1}单元`,
            completed: false
          })),
          2: Array(16).fill().map((_, i) => ({
            id: i + 1,
            name: `第${i + 1}单元`,
            completed: false
          }))
        }
      }
    }
  },

  // ... 原有方法

  // 切换词库类型
  switchDictType(e) {
    const type = e.currentTarget.dataset.type;
    this.setData({ dictType: type });
  },

  // 切换年级/级别的展开状态
  toggleGrade(e) {
    const grade = e.currentTarget.dataset.grade;
    const expandKey = `${grade}Expanded`;
    this.setData({
      [expandKey]: !this.data[expandKey]
    });
  },

  // 选择课程
  selectLesson(e) {
    const { grade, lesson } = e.currentTarget.dataset;
    // 加载对应课程的单词数据
    this.loadLessonWords(grade, lesson);
  },

  // 选择单元
  selectUnit(e) {
    const { level, semester, unit } = e.currentTarget.dataset;
    // 加载对应单元的单词数据
    this.loadUnitWords(level, semester, unit);
  },

  // 加载课程词库的单词数据
  loadLessonWords(grade, lesson) {
    wx.showLoading({
      title: '加载中...'
    });

    // 模拟加载数据
    setTimeout(() => {
      wx.hideLoading();
      // 这里应该是实际的数据加载逻辑
      this.setData({
        currentGroup: 0,
        currentWordIndex: 0,
        // 加载新的单词组数据
        wordGroups: []  // 这里需要设置实际的单词数据
      });
    }, 500);
  },

  // 加载剑桥词库的单词数据
  loadUnitWords(level, semester, unit) {
    wx.showLoading({
      title: '加载中...'
    });

    // 模拟加载数据
    setTimeout(() => {
      wx.hideLoading();
      // 这里应该是实际的数据加载逻辑
      this.setData({
        currentGroup: 0,
        currentWordIndex: 0,
        // 加载新的单词组数据
        wordGroups: []  // 这里需要设置实际的单词数据
      });
    }, 500);
  }
}); 